// let不存在变量提升。不能重复定义，存在块级作用域
// 在代码执行之前，在当前作用域下浏览器会进行变量重复性检测，一旦重名直接抛出异常，代码也不会执行。
let a = 10, b = 20  //let a=10; let b=20
let fn = () => {
    console.log(b) //a未定义报错不向外查找，下面才定义let a=30 提前使用就报未定义错误
    //   b=20 b未被let定义就向外查找，引用外面的b
    let a =b=30 //let a=30;  b=30   修改外面b的值
    console.log(a, b)  //30  30
}
fn()
console.log(a, b) // 10 30


